Histogram of Oriented Gradients

AI
qwen-3-235b-a22b-instruct-2507
작성자
익명
작성일
2025.12.20
조회수
4
버전
v1

Histogram of Oriented Gradients

개요

Histogram of Oriented Gradients(HOG, 기울기 방향 히스토그램)는 컴퓨터비전 및 이미지 처리 분야에서 객체 검출(object detection)을 위해 널리 사용되는 특징 추출(feature extraction) 기법입니다. 이 기법은 이미지의 지역적인 그래디언트(기울기) 방향 분포를 통계적으로 요약하여 객체의 형태와 윤곽 정보를 효과적으로 포착합니다. HOG는 특히 사람 검출(person detection)에 뛰어난 성능을 보이며, 2005년 Navneet Dalal과 Bill Triggs가 제안한 이후로 다양한 객체 검출 시스템의 핵심 구성 요소로 자리 잡았습니다.

HOG는 색상이나 밝기보다는 경계와 윤곽의 기하학적 구조에 초점을 두기 때문에 조명 변화나 색상 변화에 비교적 강인하며, 단순하면서도 강력한 특징 벡터를 생성합니다.


작동 원리

HOG는 이미지의 각 픽셀에서 기울기 벡터(크기와 방향)를 계산한 후, 이를 지역 셀(cell) 단위로 나누어 방향 히스토그램을 구성합니다. 전체 과정은 다음과 같은 주요 단계로 나뉩니다.

1. 이미지 정규화

입력 이미지는 그레이스케일로 변환된 후, 조명 변화의 영향을 줄이기 위해 감마 정규화(gamma normalization)를 적용할 수 있습니다. 감마 정규화는 픽셀 값을 다음과 같이 변환합니다:

$$ I_{\text{norm}}(x, y) = \text{sign}(I(x, y)) \cdot |I(x, y)|^\alpha $$

여기서 $\alpha$는 일반적으로 0.5로 설정되며, 밝기의 동적 범위를 압축하여 조명 균일성을 높입니다.

2. 그래디언트 계산

각 픽셀의 수평($G_x$)과 수직($G_y$) 방향 그래디언트를 소벨 필터(Sobel filter) 등을 사용해 계산합니다:

$$ G_x = \begin{bmatrix}-1 & 0 & 1\end{bmatrix} * I, \quad G_y = \begin{bmatrix}-1 \\ 0 \\ 1\end{bmatrix} * I $$

이후 각 픽셀의 그래디언트 크기 $G$와 방향 $\theta$는 다음과 같이 구합니다:

$$ G = \sqrt{G_x^2 + G_y^2}, \quad \theta = \arctan\left(\frac{G_y}{G_x}\right) $$

방향은 일반적으로 0°에서 180° 또는 0°에서 360° 범위로 양자화되며, HOG에서는 180° 기준을 주로 사용합니다 (무방향성).

3. 셀 단위 히스토그램 구성

이미지는 작은 격자 단위인 (cell)로 분할됩니다. 일반적으로 8×8 픽셀 크기의 셀을 사용합니다. 각 셀 내의 모든 픽셀에 대해 그래디언트 방향을 기반으로 방향 히스토그램을 작성합니다. 예를 들어, 9개의 빈(bin)을 사용하면 0°~20°, 20°~40°, ..., 160°~180° 범위로 나뉩니다.

각 픽셀의 그래디언트 크기는 해당 방향에 따라 인접한 빈에 가중치를 분배할 수 있습니다 (bilinear interpolation).

4. 블록 정규화

여러 셀을 묶어 블록(block)을 구성하고, 이 블록 내의 히스토그램들을 연결한 후 정규화합니다. 일반적으로 2×2 셀(즉, 16×16 픽셀)을 하나의 블록으로 설정합니다. 정규화는 조명 및 콘트라스트 변화에 대한 강인성을 높이기 위해 수행되며, 주로 L2-norm 또는 L2-Hys(절단된 L2 정규화)를 사용합니다.

정규화된 블록 벡터들이 전체 이미지에 걸쳐 슬라이딩 윈도우 방식으로 추출되며, 중첩되게 배치됩니다.

5. 최종 HOG 특징 벡터 생성

모든 블록에서 추출된 정규화된 히스토그램 벡터들을 연결하여 하나의 긴 HOG 특징 벡터(feature vector)를 생성합니다. 예를 들어, 64×128 크기의 이미지에서 8×8 셀과 2×2 블록을 사용하면 약 3,780차원의 특징 벡터가 생성됩니다.


장점과 한계

장점

  • 형태 기반 특징 추출: 색상이나 질감보다 윤곽 정보에 집중하므로 객체의 형태를 효과적으로 포착합니다.
  • 조명 변화에 강인: 감마 정규화 및 블록 정규화를 통해 조명 변화에 강합니다.
  • 해상도 의존성 낮음: 일정한 윈도우 크기 내에서 특징을 추출하므로 다양한 스케일에서 활용 가능(다중 해상도 처리 필요).
  • 실시간 처리 가능: 계산이 비교적 간단하여 실시간 객체 검출 시스템에 적합합니다.

한계

  • 정적인 특징: HOG는 정적인 윈도우 기반 특징이므로 동영상이나 움직임 기반 검출에는 부적합합니다.
  • 시각적 변형에 취약: 회전, 비틀림, 부분 가림 등에 약할 수 있습니다.
  • 딥러닝 기반 방법에 비해 성능 낮음: CNN 기반 모델(예: YOLO, Faster R-CNN)에 비해 정확도가 낮으며, 현재는 주로 교육용 또는 경량 시스템에서 사용됩니다.

활용 사례

  • 사람 검출(Pedestrian Detection): HOG + SVM 조합은 전통적인 사람 검출 파이프라인의 표준이었습니다.
  • 자동차 검출, 자전거 탑승자 검출 등 도로 환경 인식 시스템.
  • 실내 로봇 내비게이션: 실시간 장애물 인식.
  • 의료 이미지 분석: 특정 구조(예: 폐결절)의 윤곽 기반 탐지 보조.

관련 기술 및 비교

기술 설명 HOG와의 차이점
SIFT 스케일 불변 특징 변환. 키포인트 기반 HOG는 밀집 그리드 기반, SIFT는 희소 키포인트 기반
LBP(Local Binary Patterns) 텍스처 기반 특징 HOG는 경계 방향, LBP는 이진 패턴 기반
CNN 기반 특징 학습 기반 계층적 특징 추출 HOG는 수동 설계된 특징, CNN은 자동 학습

참고 자료

  • Dalal, N., & Triggs, B. (2005). Histograms of Oriented Gradients for Human Detection. CVPR.
  • OpenCV 공식 문서: HOG Descriptor
  • Lowe, D. G. (2004). Distinctive Image Features from Scale-Invariant Keypoints. IJCV.

관련 문서: SIFT, SURF, 객체 검출, 특징 추출

AI 생성 콘텐츠 안내

이 문서는 AI 모델(qwen-3-235b-a22b-instruct-2507)에 의해 생성된 콘텐츠입니다.

주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.

이 AI 생성 콘텐츠가 도움이 되었나요?